mkdir -p ./data
echo core,freq,LLCsize,if,ddr,result > ./data/test.tmp
for i in `ls ./origin_data`
do
{
    # $i 是 ./origin_data 中文件夹的名字
    # 现在 $i 的格式是类似这样的："2core_1GHz_4MB_2000MHz_3000MHz"
    para=$i
    core=${para%%core*}
    para=${para#*_}
    freq=${para%%GHz*}
    para=${para#*_}
    LLCsize=${para%%MB*}
    para=${para#*_}
    if=${para%%MHz*}
    para=${para#*_}
    ddr=${para%%MHz*}

    # 获得 result
    result=`grep "result:" ./origin_data/$i/result.file`  # 所需结果在每个文件夹下的 result.file 文件中，含有 "result:" 的行
    result=${result#*:}  # 获得 ":" 后的数字结果

    # 对数据进行一些计算处理
    LLCsize=`awk 'BEGIN { fl=(log("'$LLCsize'")/log(2)); print fl }'`
    if=`echo "scale=3; $if/1000" | bc`
    ddr=`echo "scale=3; $ddr/1000" | bc`

    # 将数据写入文件
    if [ $result ]; then
        echo $core,$freq,$LLCsize,$if,$ddr,$result >> ./data/test.tmp
    fi
}&  # 多线程并行执行加速
done
wait

# 去除 tmp 中可能存在的空格，生成 csv
sed s/[[:space:]]//g ./data/test.tmp > ./data/test.csv &
wait

# 删除 tmp 文件
rm ./data/*.tmp